package ferrovias.clases;

import java.util.ArrayList;

public class Ferrovias {
	
	private ArrayList<TrenBelgranoNorte> lvTrenesARetiro;
	private ArrayList<TrenBelgranoNorte> lvTrenesAVillaRosa;
	private ArrayList<TrenBelgranoNorte> sabTrenesARetiro;
	private ArrayList<TrenBelgranoNorte> sabTrenesAVillaRosa;
	private ArrayList<TrenBelgranoNorte> dyfTrenesARetiro;
	private ArrayList<TrenBelgranoNorte> dyfTrenesAVillaRosa;
	
	public Ferrovias(){
		//Trenes de Lunes a Viernes a Retiro
		lvTrenesARetiro=new ArrayList<TrenBelgranoNorte>();
		lvTrenesARetiro.add(new TrenVillarosaBoulogne(new Hora(0,15), 3002));
		lvTrenesARetiro.add(new TrenVillarosaBoulogne(new Hora(1,15), 3004));
		lvTrenesARetiro.add(new TrenVillarosaRetiro(new Hora(3,10),3006));
		lvTrenesARetiro.add(new TrenGrandbourgRetiro(new Hora(3,55), 3008));
		lvTrenesARetiro.add(new TrenVillarosaRetiro(new Hora(4,00), 3010));
		lvTrenesARetiro.add(new TrenGrandbourgRetiro(new Hora(4,35), 3012));
		lvTrenesARetiro.add(new TrenVillarosaRetiro(new Hora(4,30), 3014));
		lvTrenesARetiro.add(new TrenGrandbourgRetiro(new Hora(5,2), 3016));
		lvTrenesARetiro.add(new TrenDelvisoRetiro(new Hora(5,0), 3018));
		lvTrenesARetiro.add(new TrenVillarosaRetiro(new Hora(5,11), 3020));
		lvTrenesARetiro.add(new TrenGrandbourgRetiro(new Hora(5,41), 3022));
		lvTrenesARetiro.add(new TrenDelvisoRetiro(new Hora(5,38), 3024));
		lvTrenesARetiro.add(new TrenVillarosaRetiro(new Hora(5,43), 3026));
		lvTrenesARetiro.add(new TrenGrandbourgRetiro(new Hora(6,14), 3028));
		lvTrenesARetiro.add(new TrenDelvisoRetiro(new Hora(6,12), 3030));
		lvTrenesARetiro.add(new TrenVillarosaRetiro(new Hora(6,15), 3032));
		lvTrenesARetiro.add(new TrenGrandbourgRetiro(new Hora(6,45), 3034));
		lvTrenesARetiro.add(new TrenDelvisoRetiro(new Hora(6,40), 3036));
		lvTrenesARetiro.add(new TrenPolvorinesRetiro(new Hora(7,5), 3038));
		lvTrenesARetiro.add(new TrenVillarosaRetiro(new Hora(6,47), 3040));
		lvTrenesARetiro.add(new TrenGrandbourgRetiro(new Hora(7,17), 3042));
		lvTrenesARetiro.add(new TrenVillarosaRetiro(new Hora(7,5), 3044));
		lvTrenesARetiro.add(new TrenGrandbourgRetiro(new Hora(7,36), 3046));
		lvTrenesARetiro.add(new TrenVillarosaRetiro(new Hora(7,28), 3048));
		lvTrenesARetiro.add(new TrenGrandbourgRetiro(new Hora(8,00), 3050));
		lvTrenesARetiro.add(new TrenBoulogneRetiro(new Hora(8,32), 3052));
		lvTrenesARetiro.add(new TrenVillarosaRetiro(new Hora(7,53), 3054));
		lvTrenesARetiro.add(new TrenGrandbourgRetiro(new Hora(8,25), 3056));
		lvTrenesARetiro.add(new TrenDelvisoRetiro(new Hora(8,24), 3058));
		lvTrenesARetiro.add(new TrenGrandbourgRetiro(new Hora(8,49), 3060));
		lvTrenesARetiro.add(new TrenVillarosaRetiro(new Hora(8,44), 3062));		
		lvTrenesARetiro.add(new TrenGrandbourgRetiro(new Hora(9,19), 3064));
		lvTrenesARetiro.add(new TrenDelvisoRetiro(new Hora(9,21), 3066));
		lvTrenesARetiro.add(new TrenGrandbourgRetiro(new Hora(9,49), 3068));
		lvTrenesARetiro.add(new TrenVillarosaRetiro(new Hora(9,44), 3070));		
		lvTrenesARetiro.add(new TrenGrandbourgRetiro(new Hora(10,18), 3072));
		lvTrenesARetiro.add(new TrenDelvisoRetiro(new Hora(10,19), 3074));
		lvTrenesARetiro.add(new TrenGrandbourgRetiro(new Hora(10,46), 3076));
		lvTrenesARetiro.add(new TrenVillarosaRetiro(new Hora(10,44), 3078));		
		lvTrenesARetiro.add(new TrenGrandbourgRetiro(new Hora(11,19), 3080));
		lvTrenesARetiro.add(new TrenDelvisoRetiro(new Hora(11,21), 3082));
		lvTrenesARetiro.add(new TrenGrandbourgRetiro(new Hora(11,49), 3084));
		lvTrenesARetiro.add(new TrenVillarosaRetiro(new Hora(11,44), 3086));		
		lvTrenesARetiro.add(new TrenGrandbourgRetiro(new Hora(12,19), 3088));
		lvTrenesARetiro.add(new TrenDelvisoRetiro(new Hora(12,21), 3090));
		lvTrenesARetiro.add(new TrenGrandbourgRetiro(new Hora(12,49), 3092));
		lvTrenesARetiro.add(new TrenVillarosaRetiro(new Hora(12,44), 3094));		
		lvTrenesARetiro.add(new TrenGrandbourgRetiro(new Hora(13,19), 3096));
		lvTrenesARetiro.add(new TrenDelvisoRetiro(new Hora(13,21), 3098));
		lvTrenesARetiro.add(new TrenGrandbourgRetiro(new Hora(13,49), 3100));
		lvTrenesARetiro.add(new TrenVillarosaRetiro(new Hora(13,44), 3102));		
		lvTrenesARetiro.add(new TrenGrandbourgRetiro(new Hora(14,19), 3104));
		lvTrenesARetiro.add(new TrenDelvisoRetiro(new Hora(14,21), 3106));
		lvTrenesARetiro.add(new TrenGrandbourgRetiro(new Hora(14,49), 3108));
		lvTrenesARetiro.add(new TrenVillarosaRetiro(new Hora(14,44), 3110));		
		lvTrenesARetiro.add(new TrenGrandbourgRetiro(new Hora(15,19), 3112));
		lvTrenesARetiro.add(new TrenDelvisoRetiro(new Hora(15,21), 3114));
		lvTrenesARetiro.add(new TrenGrandbourgRetiro(new Hora(15,48), 3116));
		lvTrenesARetiro.add(new TrenVillarosaRetiro(new Hora(15,44), 3118));
		lvTrenesARetiro.add(new TrenBoulogneRetiro(new Hora(16,40), 3120));
		lvTrenesARetiro.add(new TrenGrandbourgRetiro(new Hora(16,27), 3122));
		lvTrenesARetiro.add(new TrenVillarosaRetiro(new Hora(16,17), 3124));		
		lvTrenesARetiro.add(new TrenGrandbourgRetiro(new Hora(16,50), 3126));
		lvTrenesARetiro.add(new TrenDelvisoRetiro(new Hora(16,47), 3128));
		lvTrenesARetiro.add(new TrenGrandbourgRetiro(new Hora(17,12), 3130));
		lvTrenesARetiro.add(new TrenVillarosaRetiro(new Hora(17,01), 3132));		
		lvTrenesARetiro.add(new TrenBoulogneRetiro(new Hora(17,47), 3134));		
		lvTrenesARetiro.add(new TrenVillarosaRetiro(new Hora(17,22), 3136));		
		lvTrenesARetiro.add(new TrenBoulogneRetiro(new Hora(18,20), 3138));		
		lvTrenesARetiro.add(new TrenDelvisoRetiro(new Hora(17,51), 3140));
		lvTrenesARetiro.add(new TrenBoulogneRetiro(new Hora(18,42), 3142));		
		lvTrenesARetiro.add(new TrenVillarosaRetiro(new Hora(18,9), 3144));
		lvTrenesARetiro.add(new TrenBoulogneRetiro(new Hora(19,6), 3146));
		lvTrenesARetiro.add(new TrenVillarosaRetiro(new Hora(18,32), 3148));		
		lvTrenesARetiro.add(new TrenGrandbourgRetiro(new Hora(19,7), 3150));
		lvTrenesARetiro.add(new TrenVillarosaRetiro(new Hora(18,55), 3152));
		lvTrenesARetiro.add(new TrenGrandbourgRetiro(new Hora(19,28), 3154));
		lvTrenesARetiro.add(new TrenVillarosaRetiro(new Hora(19,19), 3156));
		lvTrenesARetiro.add(new TrenGrandbourgRetiro(new Hora(19,50), 3158));
		lvTrenesARetiro.add(new TrenDelvisoRetiro(new Hora(19,48), 3160));
		lvTrenesARetiro.add(new TrenGrandbourgRetiro(new Hora(20,12), 3162));
		lvTrenesARetiro.add(new TrenVillarosaRetiro(new Hora(20,3), 3164));
		lvTrenesARetiro.add(new TrenDelvisoRetiro(new Hora(20,31), 3166));		
		lvTrenesARetiro.add(new TrenVillarosaRetiro(new Hora(20,46), 3168));
		lvTrenesARetiro.add(new TrenDelvisoRetiro(new Hora(21,13), 3170));		
		lvTrenesARetiro.add(new TrenVillarosaRetiro(new Hora(21,26), 3172));
		lvTrenesARetiro.add(new TrenVillarosaRetiro(new Hora(21,50), 3174));
		lvTrenesARetiro.add(new TrenVillarosaRetiro(new Hora(22,15), 3176));
		lvTrenesARetiro.add(new TrenDelvisoRetiro(new Hora(22,47), 3178));		
		lvTrenesARetiro.add(new TrenVillarosaRetiro(new Hora(23,15), 3180));
		
		//Trenes de Lunes a Viernes a Villa Rosa
		lvTrenesAVillaRosa=new ArrayList<TrenBelgranoNorte>();
		lvTrenesAVillaRosa.add(new TrenRetiroBoulogne(new Hora(0,15),3001));
		lvTrenesAVillaRosa.add(new TrenRetiroBoulogne(new Hora(0,50),3003));
		lvTrenesAVillaRosa.add(new TrenBoulogneVillaRosa(new Hora(3,0),3005));
		lvTrenesAVillaRosa.add(new TrenBoulogneVillaRosa(new Hora(3,30),3007));
		lvTrenesAVillaRosa.add(new TrenBoulogneVillaRosa(new Hora(4,5),3009));
		lvTrenesAVillaRosa.add(new TrenBoulogneVillaRosa(new Hora(4,42),3011));
		lvTrenesAVillaRosa.add(new TrenRetiroVillarosa(new Hora(4,38),3013));		
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,	new Hora(5, 4), 3015));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,	new Hora(5, 31), 3017));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 9,	new Hora(5, 41), 3019));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,	new Hora(5, 56), 3021));		
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 9,	new Hora(6, 9), 3023));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,	new Hora(6, 21), 3025));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 9,	new Hora(6, 32), 3027));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 20,	new Hora(6, 47), 3029));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 9,	new Hora(6, 56), 3031));		
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,	new Hora(7, 10), 3033));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 9,	new Hora(7, 21), 3035));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,	new Hora(7, 32), 3037));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 20,	new Hora(7, 45), 3039));		
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,	new Hora(8, 2), 3041));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,	new Hora(8, 12), 3043));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,	new Hora(8, 28), 3045));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 20,	new Hora(8, 44), 3047));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 9,	new Hora(8, 51), 3049));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,	new Hora(8, 58), 3051));		
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,	new Hora(9, 12), 3053));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,	new Hora(9, 28), 3055));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 20,	new Hora(9, 44), 3057));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,	new Hora(9, 58), 3059));		
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,	new Hora(10, 12), 3061));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,	new Hora(10, 28), 3063));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 20,	new Hora(10, 44), 3065));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,	new Hora(10, 58), 3067));		
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,	new Hora(11, 12), 3069));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,	new Hora(11, 28), 3071));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 20,	new Hora(11, 44), 3073));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,	new Hora(11, 58), 3075));		
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,	new Hora(12, 12), 3077));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,	new Hora(12, 28), 3079));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 20,	new Hora(12, 44), 3081));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,	new Hora(12, 58), 3083));		
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,	new Hora(13, 12), 3085));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,	new Hora(13, 30), 3087));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 20,	new Hora(13, 44), 3089));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,	new Hora(13, 58), 3091));		
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,	new Hora(14, 12), 3093));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,	new Hora(14, 26), 3095));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,	new Hora(14, 40), 3097));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,	new Hora(14, 53), 3099));		
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 20,	new Hora(15, 5), 3101));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,	new Hora(15, 16), 3103));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,	new Hora(15, 27), 3105));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,	new Hora(15, 38), 3107));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,	new Hora(15, 49), 3109));		
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,	new Hora(16, 1), 3111));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 20,	new Hora(16, 12), 3113));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,	new Hora(16, 24), 3115));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,	new Hora(16, 35), 3117));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,	new Hora(16, 47), 3119));		
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,	new Hora(17, 0), 3121));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,	new Hora(17, 11), 3123));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,	new Hora(17, 22), 3125));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,	new Hora(17, 34), 3127));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,	new Hora(17, 45), 3129));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,	new Hora(17, 57), 3131));		
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 20,	new Hora(18, 7), 3133));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,	new Hora(18, 18), 3135));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,	new Hora(18, 28), 3137));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,	new Hora(18, 39), 3139));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 20,	new Hora(18, 49), 3141));		
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,	new Hora(19, 0), 3143));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,	new Hora(19, 11), 3145));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,	new Hora(19, 23), 3147));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 20,	new Hora(19, 35), 3149));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,	new Hora(19, 47), 3151));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,	new Hora(19, 59), 3153));		
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,	new Hora(20, 12), 3155));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,	new Hora(20, 24), 3157));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,	new Hora(20, 35), 3159));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,	new Hora(20, 47), 3161));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 20,	new Hora(20, 59), 3163));		
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,	new Hora(21, 14), 3165));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,	new Hora(21, 29), 3167));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,	new Hora(21, 44), 3169));		
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 20,	new Hora(22, 0), 3171));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,	new Hora(22, 20), 3173));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,	new Hora(22, 40), 3175));		
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,	new Hora(23, 0), 3177));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 20,	new Hora(23, 20), 3179));
		lvTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,	new Hora(23, 45), 3181));
		
		
		//Trenes sabados a Retiro
		sabTrenesARetiro=new ArrayList<TrenBelgranoNorte>();
		//Trenes Sabados a Villa Rosa
		sabTrenesAVillaRosa=new ArrayList<TrenBelgranoNorte>();
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 9,new Hora(0,15), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 9,new Hora(0,50), 0));
		//trenes desde boulogne
		sabTrenesAVillaRosa.add(new TrenBoulogneVillaRosa(new Hora(3,0),3005));
		sabTrenesAVillaRosa.add(new TrenBoulogneVillaRosa(new Hora(3,30),3007));
		sabTrenesAVillaRosa.add(new TrenBoulogneVillaRosa(new Hora(4,5),3009));
		sabTrenesAVillaRosa.add(new TrenBoulogneVillaRosa(new Hora(4,45),3011));		
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,new Hora(4,40), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,new Hora(5,8), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,new Hora(5,33), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,new Hora(5,57), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 9,new Hora(6,10), 0));		
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,new Hora(6,24), 0));
		
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 9,new Hora(6,36), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,new Hora(6,50), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 20,new Hora(7,03), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,new Hora(7,16), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 9,new Hora(7,28), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,new Hora(7,42), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 20,new Hora(7,55), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,new Hora(8,8), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,new Hora(8,21), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,new Hora(8,37), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 20,new Hora(8,53), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,new Hora(9,07), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,new Hora(9,21), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,new Hora(9,37), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 20,new Hora(9,53), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,new Hora(10,07), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,new Hora(10,21), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,new Hora(10,37), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 20,new Hora(10,53), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,new Hora(11,07), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,new Hora(11,21), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,new Hora(11,37), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 20,new Hora(11,53), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,new Hora(12,07), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,new Hora(12,21), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,new Hora(12,39), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 20,new Hora(12,53), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,new Hora(13,07), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,new Hora(13,20), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,new Hora(13,33), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 20,new Hora(13,46), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,new Hora(14,02), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,new Hora(14,16), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,new Hora(14,31), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 20,new Hora(14,45), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,new Hora(14,58), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,new Hora(15,11), 0));
		//TODO HASTA ACA ESTA BIEN, VERIFICAR EL RESTO
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,new Hora(15,26), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 20,new Hora(15,41), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 20,new Hora(15,53), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,new Hora(16,8), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,new Hora(16,23), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 20,new Hora(16,36), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,new Hora(16,48), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,new Hora(17,0), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,new Hora(17,14), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,new Hora(17,28), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,new Hora(17,42), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 20,new Hora(17,56), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,new Hora(18,10), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,new Hora(18,24), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 20,new Hora(18,37), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,new Hora(18,51), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,new Hora(19,03), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 20,new Hora(19,16), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,new Hora(19,29), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,new Hora(19,42), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 20,new Hora(19,57), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,new Hora(20,12), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,new Hora(20,27), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 20,new Hora(20,43), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,new Hora(21,0), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,new Hora(21,20), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 20,new Hora(21,40), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,new Hora(22,0), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,new Hora(22,20), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 20,new Hora(22,40), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 16,new Hora(23,0), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 20,new Hora(23,20), 0));
		sabTrenesAVillaRosa.add(TrenBelgranoNorte.getTren(0, 21,new Hora(23,45), 0));
		//Trenes Domingos a Retiro
		dyfTrenesARetiro=new ArrayList<TrenBelgranoNorte>();
		//Trenes Domingos a Villa Rosa
		dyfTrenesAVillaRosa=new ArrayList<TrenBelgranoNorte>();
	}

	public ArrayList<TrenBelgranoNorte> getLvTrenesARetiro() {
		return lvTrenesARetiro;
	}

	public void setLvTrenesARetiro(ArrayList<TrenBelgranoNorte> lvTrenesARetiro) {
		this.lvTrenesARetiro = lvTrenesARetiro;
	}

	public ArrayList<TrenBelgranoNorte> getLvTrenesAVillaRosa() {
		return lvTrenesAVillaRosa;
	}

	public void setLvTrenesAVillaRosa(
			ArrayList<TrenBelgranoNorte> lvTrenesAVillaRosa) {
		this.lvTrenesAVillaRosa = lvTrenesAVillaRosa;
	}

	public ArrayList<TrenBelgranoNorte> getSabTrenesARetiro() {
		return sabTrenesARetiro;
	}

	public void setSabTrenesARetiro(ArrayList<TrenBelgranoNorte> sabTrenesARetiro) {
		this.sabTrenesARetiro = sabTrenesARetiro;
	}

	public ArrayList<TrenBelgranoNorte> getSabTrenesAVillaRosa() {
		return sabTrenesAVillaRosa;
	}

	public void setSabTrenesAVillaRosa(
			ArrayList<TrenBelgranoNorte> sabTrenesAVillaRosa) {
		this.sabTrenesAVillaRosa = sabTrenesAVillaRosa;
	}

	public ArrayList<TrenBelgranoNorte> getDyfTrenesARetiro() {
		return dyfTrenesARetiro;
	}

	public void setDyfTrenesARetiro(ArrayList<TrenBelgranoNorte> dyfTrenesARetiro) {
		this.dyfTrenesARetiro = dyfTrenesARetiro;
	}

	public ArrayList<TrenBelgranoNorte> getDyfTrenesAVillaRosa() {
		return dyfTrenesAVillaRosa;
	}

	public void setDyfTrenesAVillaRosa(
			ArrayList<TrenBelgranoNorte> dyfTrenesAVillaRosa) {
		this.dyfTrenesAVillaRosa = dyfTrenesAVillaRosa;
	}

	public  ArrayList<TrenBelgranoNorte> buscarTren(int estA,int estB,Hora h1, Hora h2,int dia){
		if(h1.esMayorQue(h2)){
			ArrayList<TrenBelgranoNorte> resultado=new ArrayList<TrenBelgranoNorte>();			
			resultado.addAll(buscarTren(estA,estB,h1,new Hora(23,59),dia));
			resultado.addAll(buscarTren(estA,estB,new Hora(0,0),h2,dia));
			return resultado;
		}
		if(estA<estB)
			return buscarTrenDeRetiroAVillaRosa(estA,estB,h1,h2,dia);
		return buscarTrenDeVillarosaARetiro(estA,estB,h1,h2,dia);
	}

	private ArrayList<TrenBelgranoNorte> buscarTrenDeVillarosaARetiro(int estA,int estB, Hora h1, Hora h2,int dia) {
		ArrayList<TrenBelgranoNorte> resultado=new ArrayList<TrenBelgranoNorte>();
		ArrayList<TrenBelgranoNorte> lista=null;
		if(dia==0) lista=lvTrenesARetiro;
		else{
			if(dia==1) lista=sabTrenesARetiro;
			else lista=dyfTrenesARetiro;
		}
			
		for(TrenBelgranoNorte tren:lista){
			if(tren.getHoraEstaciones()[estA]!=null && tren.getHoraEstaciones()[estB]!=null){
				Hora h=tren.getHoraEstaciones()[estA];
				if(h.esMayorQue(h1) && h.esMenorQue(h2)){
					tren.setOrigen(estA);
					tren.setDestino(estB);
					resultado.add(tren);
				}
			}
		}
		return resultado;
	}

	private ArrayList<TrenBelgranoNorte> buscarTrenDeRetiroAVillaRosa(int estA,int estB, Hora h1, Hora h2,int dia) {
		ArrayList<TrenBelgranoNorte> resultado=new ArrayList<TrenBelgranoNorte>();
		ArrayList<TrenBelgranoNorte> lista=null;
		if(dia==0) lista=lvTrenesAVillaRosa;
		else{
			if(dia==1) lista=sabTrenesAVillaRosa;
			else lista=dyfTrenesAVillaRosa;
		}
		for(TrenBelgranoNorte tren:lista){
			if(tren.getHoraEstaciones()[estA]!=null && tren.getHoraEstaciones()[estB]!=null){
				Hora h=tren.getHoraEstaciones()[estA];
				if(h.esMayorQue(h1) && h.esMenorQue(h2)){
					tren.setOrigen(estA);
					tren.setDestino(estB);
					resultado.add(tren);
				}
			}
		}
		return resultado;
	}
	
	public ArrayList<TrenBelgranoNorte> getTrenesQueEstanALaHora(Hora hora,int dia){
		ArrayList<TrenBelgranoNorte> resultado=new ArrayList<TrenBelgranoNorte>();
		ArrayList<TrenBelgranoNorte> lista=null;
		if(dia==0){ 
			lista=lvTrenesAVillaRosa;
			lista.addAll(lvTrenesARetiro);
		}
		else{
			if(dia==1){
					lista=sabTrenesAVillaRosa;
					lista.addAll(sabTrenesARetiro);
					}
				
			else {
				lista=dyfTrenesAVillaRosa;
				lista.addAll(dyfTrenesARetiro);
			}
		}
		for(TrenBelgranoNorte t : lista){
			if(t.circulaALaHora(hora)){
				resultado.add(t);
			}
		}
		return resultado;
		
	}
	
	
}
